home *** CD-ROM | disk | FTP | other *** search
/ Aminet 51 / Aminet 51 (2002)(GTI - Schatztruhe)[!][Oct 2002].iso / Aminet / dev / gg / openssl-bin.lha / ssl / include / openssl / comp.h < prev    next >
Encoding:
C/C++ Source or Header  |  2002-08-08  |  1.3 KB  |  62 lines

  1.  
  2. #ifndef HEADER_COMP_H
  3. #define HEADER_COMP_H
  4.  
  5. #include <openssl/crypto.h>
  6.  
  7. #ifdef  __cplusplus
  8. extern "C" {
  9. #endif
  10.  
  11. typedef struct comp_method_st
  12.     {
  13.     int type;        /* NID for compression library */
  14.     const char *name;    /* A text string to identify the library */
  15.     int (*init)();
  16.     void (*finish)();
  17.     int (*compress)();
  18.     int (*expand)();
  19.     long (*ctrl)();
  20.     long (*callback_ctrl)();
  21.     } COMP_METHOD;
  22.  
  23. typedef struct comp_ctx_st
  24.     {
  25.     COMP_METHOD *meth;
  26.     unsigned long compress_in;
  27.     unsigned long compress_out;
  28.     unsigned long expand_in;
  29.     unsigned long expand_out;
  30.  
  31.     CRYPTO_EX_DATA    ex_data;
  32.     } COMP_CTX;
  33.  
  34.  
  35. COMP_CTX *COMP_CTX_new(COMP_METHOD *meth);
  36. void COMP_CTX_free(COMP_CTX *ctx);
  37. int COMP_compress_block(COMP_CTX *ctx, unsigned char *out, int olen,
  38.     unsigned char *in, int ilen);
  39. int COMP_expand_block(COMP_CTX *ctx, unsigned char *out, int olen,
  40.     unsigned char *in, int ilen);
  41. COMP_METHOD *COMP_rle(void );
  42. #ifdef ZLIB
  43. COMP_METHOD *COMP_zlib(void );
  44. #endif
  45.  
  46. /* BEGIN ERROR CODES */
  47. /* The following lines are auto generated by the script mkerr.pl. Any changes
  48.  * made after this point may be overwritten when the script is next run.
  49.  */
  50. void ERR_load_COMP_strings(void);
  51.  
  52. /* Error codes for the COMP functions. */
  53.  
  54. /* Function codes. */
  55.  
  56. /* Reason codes. */
  57.  
  58. #ifdef  __cplusplus
  59. }
  60. #endif
  61. #endif
  62.